Kanzi 中使用的 OpenGL 扩展名

此表格列出了 Kanzi 使用的 OpenGl 扩展名。

功能 OpenGL 扩展名 要求
二进制着色器 GL_ARB_get_program_binary
GL_OES_get_program_binary
如果您在使用二进制着色器,则一定可用其中一个扩展名,除非您的平台支持 OpenGL ES3 或更高版本。请参阅使用二进制着色器
调试 GL_KHR_debug 如果调用 Renderer::logOpenGLInformation 且此扩展名可用,则 Kanzi 使用该扩展名。
多重采样 (MSAA) GL_NV_framebuffer_multisample
GL_ARB_framebuffer_object
GL_EXT_multisampled_render_to_texture
GL_IMG_multisampled_render_to_texture
如果您使用 合成目标渲染通道 (Composition Target Render Pass) 并将多重采样设置为大于 0,则一定可用其中一个扩展名,除非您的平台支持 OpenGL ES3 或更高版本。请参阅将内容渲染成合成目标使用多重采样
矢量格式 GL_ARB_half_float_vertex
GL_OES_vertex_half_float
如果您使用半浮点矢量格式,则一定可用其中一个扩展名,除非您的平台支持 OpenGL 或更高版本。请参阅优化网格
纹理和渲染目标格式 GL_OES_rgb8_rgba8 extension 如果您使用 RGB8 渲染目标,则 Kanzi 使用此扩展名(如可用),除非您的平台支持 OpenGL 或更高版本。
GL_OES_texture_half_float
GL_OES_texture_half_float_linear
GL_OES_texture_float
GL_OES_texture_float_linear
GL_ARB_half_float_pixel
GL_EXT_color_buffer_half_float
GL_EXT_color_buffer_float
GL_ARB_color_buffer_float
If in a texture or render target you select any float16 or float32 format, Kanzi uses these extensions, if they are available.
GL_EXT_texture_norm16 If in a texture or render target you select any 16-bit signed or unsigned format, Kanzi uses this extension, if it is available.
GL_ARB_texture_storage_multisample
GL_ARB_texture_storage
GL_EXT_texture_storage
Kanzi 使用以上扩展名(如可用),除非您的平台支持 OpenGL 或更高版本。
GL_ETC1_RGB8_OES 如果您选择 ETC1 纹理格式,则一定可用以下之外的相应格式。请参阅使用 ETC 算法
GL_COMPRESSED_RGB8_ETC2
GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2
GL_COMPRESSED_RGBA8_ETC2_EAC
如果您选择 ETC2 纹理格式,则一定可用以下其中一种相应格式。请参阅使用 ETC 算法
GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG
GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG
GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG
GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG
GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG
GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG
如果您使用 PVRTC 纹理格式,则一定可用以上其中一种相应格式。请参阅使用 PVRTC 算法
GL_ATC_RGB_AMD
GL_ATC_RGBA_EXPLICIT_ALPHA_AMD
GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD
如果您使用 ATC 纹理格式,则一定可用以下其中一种相应格式。请参阅使用 ATC 算法
GL_COMPRESSED_RGBA_ASTC_4x4
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4
GL_COMPRESSED_RGBA_ASTC_5x4
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4
GL_COMPRESSED_RGBA_ASTC_5x5
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5
GL_COMPRESSED_RGBA_ASTC_6x5
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5
GL_COMPRESSED_RGBA_ASTC_6x6
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6
GL_COMPRESSED_RGBA_ASTC_8x5
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5
GL_COMPRESSED_RGBA_ASTC_8x6
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6
GL_COMPRESSED_RGBA_ASTC_8x8
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8
GL_COMPRESSED_RGBA_ASTC_10x5
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5
GL_COMPRESSED_RGBA_ASTC_10x6
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6
GL_COMPRESSED_RGBA_ASTC_10x8
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8
GL_COMPRESSED_RGBA_ASTC_10x10
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10
GL_COMPRESSED_RGBA_ASTC_12x10
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10
GL_COMPRESSED_RGBA_ASTC_12x12
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12
如果您使用 ASTC 纹理格式,则一定可用以上其中一种相应格式。请参阅使用 ASTC 算法
GL_ARB_depth_texture
GL_OES_depth_texture
如果您使用 16 位深度纹理格式,则一定可用以上其中一种相应格式,除非您的平台支持 OpenGLES3 或更高版本。
GL_OES_depth24
GL_ARB_depth_texture
如果您使用 24 位深度纹理格式,则一定可用以上其中一种相应格式,除非您的平台支持 OpenGLES3 或更高版本。
GL_OES_depth32
GL_ARB_depth_texture
如果您使用 32 位深度纹理格式,则一定可用以上其中一种相应格式,除非您的平台支持 OpenGLES3 或更高版本。
GL_EXT_packed_depth_stencil
GL_OES_packed_depth_stencil
如果您使用深度和模具,则一定可用以上其中一种相应格式,除非您的平台支持 OpenGLES3 或更高版本。
GL_OES_stencil8 如果您使用 stencil8 纹理格式,则一定可用此扩展名,除非您的平台支持 OpenGLES3 或更高版本。
GL_EXT_texture_filter_anisotropic 如果您在任意纹理中设置了非单折射性过滤,则一定可用此扩展名。
GL_ARB_seamless_cube_map Kanzi 启用此扩展名(如可用)。
GL_EXT_texture_rg 如果您使用 RG 纹理,则一定可用此扩展名,除非您的平台支持 OpenGLES3 或更高版本。
     

另请参阅

使用二进制着色器

将内容渲染成合成目标

应用抗锯齿功能

优化网格

压缩纹理

纹理

使用渲染目标纹理